Conversation
| if (!(req->flags & UCP_REQUEST_FLAG_PROTO_INITIALIZED)) { | ||
| pack_arg(req, op_size); | ||
| if (!(req->flags & UCP_REQUEST_FLAG_PROTO_AMO_PACKED)) { | ||
| pack_arg(req, op_size); |
There was a problem hiding this comment.
also need to update ucp_atomic_op_nbx so it will return UCS_OK only if UCP_REQUEST_FLAG_PROTO_AMO_PACKED flag is set, and then also (for debug build) set buffer to NULL to make sure it's not used anymore
0f3e7c2 to
6250b6c
Compare
| ep, &ucp_rkey_config(ep->worker, rkey)->proto_select, | ||
| rkey->cfg_index, req, op_id, buffer, 1, param->datatype, | ||
| op_size, param, 0, 0); | ||
| if (ucs_likely(req->flags & UCP_REQUEST_FLAG_PROTO_AMO_PACKED)) { |
There was a problem hiding this comment.
is it possible to set AMO_PACKED flag only for t protocols, to avoid the branch on "op_id == UCP_OP_ID_AMO_POST" in line 264?
There was a problem hiding this comment.
It depends on if pack_arg must be called for fetch (non-post) ops as well. As far as I can see, in current implementation, it does.
There was a problem hiding this comment.
maybe introduce another flag , UCP_REQUEST_FLAG_PROTO_AMO_COMPLETED?
There was a problem hiding this comment.
IMO it's confusing since buffered (packed) value actually does not complete operation. Also such flag will have different behavior for different ops.
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
What
RMA and AMO proto_v2 request restart support